const Page404 = () => import ('./views/PageError/Page404.vue');
const GearDesign = () => import ('./views/WorkAreaComponents/GearDesign.vue');
const rollerChain = () => import ('./views/WorkAreaComponents/RollerChain.vue');
const Spring = () => import ('./views/WorkAreaComponents/Spring.vue');
const InterferenceCheck=()=>import('./views/WorkAreaComponents/InterferenceCheck/InterferenceCheckDlg.vue');
const TransformInterferenceCheck=()=>import('./views/WorkAreaComponents/InterferenceCheck/TransformInterferenceCheckDlg.vue');
const GapCheck=()=>import('./views/WorkAreaComponents/InterferenceCheck/GapCheckDlg.vue');
const AssemblyDocMirror=()=>import('./views/WorkAreaComponents/AssemblyDocMirror.vue');
const MbdCopyAttribute=()=>import('./views/WorkAreaComponents/MbdCopyAttribute.vue');
const OpenHole = () => import('./views/WorkAreaComponents/HoleAndCut/CmdDlgOpenHole.vue');
const MassAttributeTool = () => import('./views/WorkAreaComponents/MassAttribueTool/CmdDlgMassAttributeTool.vue');
const FastCut = () => import('./views/WorkAreaComponents/HoleAndCut/CmdDlgFastCut.vue');
const WingProfileDesign = () => import('./views/WorkAreaComponents/WingProfileDesign/WingProfileDesignDlg.vue');
const SectionAttributeTool = () => import('./views/WorkAreaComponents/SectionAttributeTool/CmdDlgSectionAttributeTool.vue');
const MassDistributionCheckTool = () => import('./views/WorkAreaComponents/MassDistributionCheckTool/CmdDlgMassDistributionCheckTool.vue');
const CylindricalGearDesign = () => import('./views/WorkAreaComponents/GearDesign/CmdDlgGearDesign.vue');
const BevelGearDesign = () => import('./views/WorkAreaComponents/GearDesign/CmdDlgBevelGearDesign.vue');
const PartDeformationTool = () => import('./views/WorkAreaComponents/partModification/CmdDlgPartDeformation.vue');
const PointCloud = () => import('./views/WorkAreaComponents/PointCloud.vue');
const FacePoints = () => import('./views/WorkAreaComponents/CreateFacePoints.vue');
const WingTwist = () => import('./views/WorkAreaComponents/WingTwistDesign/WingTwistDesignDlg.vue');
const FastenerDesign = () => import('./views/WorkAreaComponents/FastenerDesignTool/CmdDlgFastenerDesign.vue');
const LandingGearFailureAnalysis = () => import('./views/WorkAreaComponents/LandingGearFailureAnalysis/LandingGearFailureAnalysis.vue')
const surfaceDeform = () => import('./views/WorkAreaComponents/SurfaceDeform/SurfaceDeform.vue');
const ElementLibrary = () => import('./views/WorkAreaComponents/ElementLibrary/DlgElementLibrary.vue');
const AddToElementLibrary = () => import('./views/WorkAreaComponents/ElementLibrary/DlgAddToElementLibrary.vue');
const SeparationFaceDesign = ()=> import('./views/WorkAreaComponents/SeparationFaceDesign/SeparationFaceDesign.vue')
const SelectParameterInsert = () => import('./views/WorkAreaComponents/ElementLibrary/DlgSelectParameterInsert.vue');
const PointCloudSimplify = ()=>import('./views/WorkAreaComponents/PointCloud/CmdDlgPointCloudSimplify.vue');
const PointCloudReconstruction = ()=>import('./views/WorkAreaComponents/PointCloud/CmdDlgPointCloudReconstruction.vue');
const ConvertGridToHookface = () => import('./views/WorkAreaComponents/ConvertGridToHookface.vue');
const SupportStandardDesign = ()=>import('./views/WorkAreaComponents/CmdDlgSupportDesign.vue');
const WingBeamTool =()=>import('./views/WorkAreaComponents/WingBeamDesign/CmdDlgWingBeam.vue');
//航空要素库
const AviationElementLibrary = () => import('./views/WorkAreaComponents/ElementLibrary/DlgAviationElementLibrary.vue');
const FrameDesignTool = () => import('./views/WorkAreaComponents/FrameDesign/FrameDesignTool.vue');
const BeltDriveDesignTool = () => import('./views/WorkAreaComponents/BeltDriveDesignTool/BeltDriveDesignTool.vue');
const LongTrussDesign = ()=>import('./views/WorkAreaComponents/LongTrussDesign/LongTrussDesign.vue');
const ChainDriveDesign = ()=>import('./views/WorkAreaComponents/ChainDriveDesign/ChainDriveDesignDlg.vue');
const ControlPointSurface = () => import('./views/WorkAreaComponents/ControlPointSurface/CmdDlgControlPointSurface.vue');

const Spline = () => import ('./views/WorkAreaComponents/bk/SplineIndex.vue');
const WormIndex = () => import ('./views/WorkAreaComponents/bk/WormIndex.vue');
const ThreadedRod = () => import('./views/WorkAreaComponents/bk/ThreadedRod.vue')
const SkinTool = () => import('./views/WorkAreaComponents/bk/SkinTool.vue')
const Skeleton = () => import('./views/WorkAreaComponents/bk/Skeleton.vue')
const SkeletonTool = () => import('./views/WorkAreaComponents/bk/SkeletonTool.vue')
const WingRib= ()=>import('./views/WorkAreaComponents/bk/WingRib.vue')
const FuselageSkeleton= ()=>import('./views/WorkAreaComponents/bk/FuselageSkeleton.vue')
const Airfoil= ()=>import('./views/WorkAreaComponents/bk/Airfoil.vue')
const AerodynamicShape=  ()=>import('./views/WorkAreaComponents/bk/AerodynamicShape.vue')
const ComputationalFluidDynamics= ()=>import('./views/WorkAreaComponents/bk/ComputationalFluidDynamics.vue')

const router = new VueRouter({
  mode: 'history',
  routes: [
    {
      path: '/',
      redirect: '/spurGear',
    },
    {
      path: '/spurGear',
      name: 'spurGear',
      component: GearDesign,
    },
    {
      path: '/rollerChain',
      name: 'rollerChain',
      component: rollerChain,
    },
    {
      path: '/spring',
      name: 'spring',
      component: Spring,
    },
    {
      path: '/docmirror',
      name: 'docmirror',
      component: AssemblyDocMirror,
    },
    {
      path: '/mbdattribute',
      name: 'mbdattribute',
      component: MbdCopyAttribute,
    },
    {
      name:'404',
      path:'/Page404',
      component:Page404
    },
    {
      name:'InterferenceCheck',
      path:'/InterferenceCheck',
      component:InterferenceCheck
    },
    {
      name:'TransformInterferenceCheck',
      path:'/TransformInterferenceCheck',
      component:TransformInterferenceCheck
    },
    {
      name:'GapCheck',
      path:'/GapCheck',
      component:GapCheck
    },
    {
      name:'OpenHole',
      path:'/openHole',
      component:OpenHole
    },
    {
      path:'/massAttributeTool',
      name:'massAttributeTool',
      component:MassAttributeTool
    },
    {
      name:'FastCut',
      path:'/fastCut',
      component:FastCut
    },
    {
      name:'WingProfileDesign',
      path:'/wingProfileDesign',
      component:WingProfileDesign
    },
    {
      path:'/sectionAttributeTool',
      name:'sectionAttributeTool',
      component:SectionAttributeTool
    },
    {
      path:'/massDistributionCheckTool',
      name:'massDistributionCheckTool',
      component:MassDistributionCheckTool
    },
    {
      path:'/cylindricalGearDesign',
      name:'cylindricalGearDesign',
      component:CylindricalGearDesign
    },
    {
      path:'/bevelGearDesign',
      name:'bevelGearDesign',
      component:BevelGearDesign
    },
    {
      name: 'PartDeformation',
      path: '/partDeformation',
      component: PartDeformationTool
    },
    {
      path:'/pointCloud',
      name:'pointCloud',
      component:PointCloud
    },
    {
      path: '/facePoints',
      name: 'facePoints',
      component: FacePoints
    },
    {
      path:'/wingTwist',
      name:'wingTwist',
      component:WingTwist
    },
    {
      name: 'FastenerDesign',
      path: '/fastenerDesign',
      component: FastenerDesign
    },
    {
      path:'/landingGearFailureAnalysis',
      name:'landingGearFailureAnalysis',
      component:LandingGearFailureAnalysis
    },
    {
      path:'/surfaceDeform',
      name:'surfaceDeform',
      component:surfaceDeform
    },
    {
      path:'/elementLibrary',
      name:'ElementLibrary',
      component:ElementLibrary
    },
    {
      path:'/separationFaceDesign',
      name:'separationFaceDesign',
      component:SeparationFaceDesign
    },
    {
      path:'/addToElementLibrary',
      name:'AddToElementLibrary',
      component:AddToElementLibrary
    },
    {
      path:'/selectParameterInsert',
      name:'SelectParameterInsert',
      component:SelectParameterInsert
    },
    {
      path: '/pointCloudSimplify',
      name:'pointCloudSimplify',
      component:PointCloudSimplify
    },
    {
      path: '/pointCloudReconstruction',
      name:'pointCloudReconstruction',
      component:PointCloudReconstruction
    },
    {
      path:'/convertGridToHookface',
      name:'convertGridToHookface',
      component:ConvertGridToHookface
    },
    {
      path:'/supportDesign',
      name:'supportDesign',
      component:SupportStandardDesign
    },
    {
      path:'/chainDriveDesign',
      name:'chainDriveDesign',
      component:ChainDriveDesign
    },
    {
      path:'/wingBeam',
      name:'wingBeam',
      component:WingBeamTool
    },
    {
      path: '/aviationElementLibrary',
      name: 'AviationElementLibrary',
      component: AviationElementLibrary
    },
    {
      path: '/frameDesignTool',
      name: 'frameDesignTool',
      component: FrameDesignTool
    },
    {
      path:'/beltDriveDesignTool',
      name:'beltDriveDesignTool',
      component: BeltDriveDesignTool
    },
    {
      path: '/longTrussDesign',
      name:'longTrussDesign',
      component:LongTrussDesign
    },
    {
      path:'/controlPointSurface',
      name:'controlPointSurface',
      component:ControlPointSurface
    },
    {
      path: '/Spline',
      name: 'Spline',
      component:Spline
    },
    {
      path: '/ThreadedRod',
      name: 'ThreadedRod',
      component:ThreadedRod
    },
    {
      path: '/WormIndex',
      name: 'WormIndex',
      component:WormIndex
    },
    {
      path: '/SkinTool',
      name: 'SkinTool',
      component:SkinTool
    },
    {
      path: '/Skeleton',
      name: 'Skeleton',
      component:Skeleton
    },
    {
      path: '/SkeletonTool',
      name: 'SkeletonTool',
      component:SkeletonTool
    },
    {
      path: '/WingRib',
      name: 'WingRib',
      component:WingRib
    }
    ,
    {
      path: '/FuselageSkeleton',
      name: 'FuselageSkeleton',
      component:FuselageSkeleton
    },
    {
      path: '/Airfoil',
      name: 'Airfoil',
      component:Airfoil
    },
    {
      path: '/AerodynamicShape',
      name: 'AerodynamicShape',
      component:AerodynamicShape
    },
    {
      path: '/ComputationalFluidDynamics',
      name: 'ComputationalFluidDynamics',
      component:ComputationalFluidDynamics
    },
  ],
});

export { router };